package com.mh.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.MongoId;

import java.util.List;

/**
 * Date:2024/10/18
 * author:zmh
 * description: 用户信息
 **/
@Data
@Document(collection = "userInfos")  // 声明 MongoDB 集合名称为 "userInfos"
@AllArgsConstructor
@NoArgsConstructor
public class UserInfos {
//    @MongoId
    private String userId;  // 用户ID，唯一标识用户

    private String openId;  // 微信服务器的唯一标识

    private String userName;  // 用户昵称

    private String userPicture;  // 用户头像图片名称

    private List<Coupon> coupons;  // 用户拥有的所有优惠券列表

    private List<String> goodsCollects;  // 用户收藏的商品ID列表

    private String createTime;  // 用户注册时间

    /**
     * 嵌套的优惠券类，表示用户拥有的优惠券信息
     */
    @Data
    public static class Coupon {

        private String couponId;  // 优惠券ID

        private Integer number;  // 优惠券数量
    }
}
